home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 005 / alarmclk.arc / CLK26.TXT < prev    next >
Text File  |  1986-01-09  |  4KB  |  63 lines

  1.                  CLK26.COM / ALMCLK26.COM    Jan 8, 1986
  2.                            By Scott Strench
  3.  
  4.    CLK26 and it's newest update, ALMCLK26, are resident on-screen clocks
  5. for the IBM PC family and close compatibles.  Both have been tested on PC's,
  6. XT's, and Jr's, and no one has complained (so-far) of unexpected behavior.
  7. However, I wrote CLK26 for my own use; I don't guarantee success on any machine
  8. but my own.  If you find these utilities work well, and you like what you see,
  9. you're welcome to them; if not, DEL works quite well.
  10.  
  11.    First, some technical background.  I had tried several of the clocks that
  12. are available on most BBS's, with varying degrees of success.  With the
  13. exception of CLOCK.COM (1024 bytes) all had caused lockup within 10 minutes.
  14. CLOCK.COM worked better, but still locked up eventually.  I tried debugging
  15. a few to try and improve, but found it easier to write my own.
  16.    Debugging did provide 2 basic constraints:  (1) Displaying the time should
  17. be done by writing directly to the video buffer, avoiding video interrupts;
  18. clocks using INT 10h invariably failed. (2) Time should be displayed where it
  19. would not interfere with what is already on-screen.
  20.    After a few hours of reading from the Tech Ref manual, I decided to display
  21. the time at the bottom of the screen, in the normally unused border area.
  22. This requires modifying the video chips' internal registers to allow 26 lines,
  23. which isn't a problem but does require that the 6845 video chip be used.
  24. IF YOUR VIDEO CARD DOESN'T USE THE 6845 CHIP OR *EXACT* REPLACEMENT, I DOUBT
  25. CLK26 WILL WORK!
  26.    In particular, CLK26 writes to the 6845's register R6 - Vertically displayed
  27. rows - changing the normal value of 25 to 26.  This is accomplished by writing
  28. to PC ports 3D4h & 3D5h; if your machine doesn't have these ports, forget it.
  29. Since BIOS assumes 25 lines, line 26 is untouched by all video functions,
  30. making it the ideal place to display a 'status' line.
  31.  
  32.    The first test of CLK26 didn't worry about what else might happen with the
  33. video circuitry, and just modified R6.  This proved that changing video modes
  34. or pages caused problems.  The next version intercepted the video interrupt
  35. and ensured that the time is displayed only in 80-column textmodes (2 & 3)
  36. on page 0.  Any other mode/page causes CLK26 to disable 26 lines and disappear
  37. from view; it still runs in the background waiting for the correct mode/page
  38. combination to reoccur, whereupon it will reappear (after a delay).
  39.    One annoyance - Line 26 is halfway between page's 0 and 1.  If a program
  40. switches to page 1, half of the time line is displayed on line 1.  Fixing
  41. this would be no problem, but I seldom switch pages and all programs I use
  42. that do switch to page 1 are well mannered enough to clear the screen.
  43.    ALMCLK26 is the first revision of CLK26 v1, and is self explanatory.
  44. CTRL-ALT-S will set an alarm to the time you specify; the time must be entered
  45. as 4 digits in 24hr format - 2359 for 11:59pm.  The alarm will sound until you
  46. press CTRL-ALT-A or 1 minute passes.  An asterisk is displayed at the far
  47. right of the time line if the alarm is set.  Also, ALMCLK26 beeps on the hour.
  48.    CLK26m.COM and ALMCLKm.COM have been modified for monochrome monitors.
  49. They *HAVE NOT* been tested, and I have no way of knowing if they'll work;
  50. I don't even know if the mono card uses the 6845.
  51.  
  52.    As I said, if these programs work for you and you like them - enjoy!  If
  53. not - DEL!  Any comments or suggestions can be directed to me through the
  54. TELESTAR BBS (512-822-8882) or the other San Antonio IBM boards.  If you're
  55. interested in the source, the same applies.
  56.  
  57. Scott Strench.
  58.  
  59. PS - Now the real question...  Why go to all the trouble of writing 60 lines
  60. of nonsense to explain a program that I wrote mainly because I was bored?
  61. Simple.  An edited version of this nonsense is eventually going to get me
  62. an 'A' on a 2-week project in Technical Writing.  I'm a firm believer in
  63. taking the course of least resistence...